/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package br.com.sisportaria.report;


   import java.io.StringReader;
   import java.sql.Connection;
   import java.sql.DriverManager;
   import java.sql.ResultSet;
   import java.sql.Statement;
   import java.util.Date;
   import java.util.HashMap;


   import net.sf.jasperreports.engine.*;
   import net.sf.jasperreports.engine.JasperPrint;
   import net.sf.jasperreports.engine.JasperReport;
   import net.sf.jasperreports.engine.design.*;
   import net.sf.jasperreports.view.JasperViewer;



   /* Primeira parte */
   public class RelatorioMovReport {


      private Connection con = null;
      private String driver = "com.mysql.jdbc.Driver";
      private String endereco = "jdbc:mysql://10.205.0.7:3306/db_portaria";
      private String user = "nti";
      private String pass = "ntipetrolina";
      private ResultSet rs = null;
      private String valores[] = new String[10];
      private int chamada = 1;
      private String dir = "c://";
      private StringReader stream;
      /*Segunda parte */

      public RelatorioMovReport(String nomeRel, Date dataInicio, Date dataFinal, String motorista, String viatura) {
         /* Efetua a conexao a base de dados e coleta os valores da base de dados armazenando-os
          em um array para ser futuramente utilizado */
         try {
            if (con == null) {
              Class.forName(driver);
               con = DriverManager.getConnection(endereco, user, pass);
               Statement statement = con.createStatement();
              rs = statement.executeQuery("SELECT * FROM MOVIMENTACAO");
              // HashMap teste = new HashMap();
              // while(rs.next()) {
                  //for at� o numero de campos da tabela
              //    for (int i = 1; i < 10; i++) {
              //       valores[i] = rs.getString(i);
              //    }
              // }
            }
         }
         catch (Exception e) {
            System.err.println("Problemas apresentados na operacao de conexao - relatorioUsuario");
            e.printStackTrace();
         }
         /* Inicio do bloco que ira gerar nossos relatorios e 3� parte */

         try {
         //   String array[] = valores;
            JasperDesign design = JasperManager.loadXmlDesign(dir+nomeRel);
            JasperReport jr = JasperManager.compileReport(design);
            HashMap parametros = new HashMap();
            parametros.put("dataInicio", dataInicio);
            parametros.put("dataFinal", dataFinal);
            parametros.put("motorista", motorista);
            parametros.put("viatura", viatura);
           //parametros.put("dtfim", array[2]);
        //    parameters.put("PARAMETRO_3", array[5]);
        //    parameters.put("PARAMETRO_4", array[4]);
        //    parameters.put("PARAMETRO_5",array[9]);
            JasperPrint impressao = JasperFillManager.fillReport(jr,parametros,con);
            JasperViewer jrviewer = new JasperViewer(impressao,false);
            jrviewer.show();
         }
         catch (Exception e) {
            e.printStackTrace();
         }
      }
      /* Aqui chamamos o construtor de nossa classe para exibirmos o relatorio e 4� parte*/
      public static void main (String args[]) {
         new RelatorioComum(null,null);
         System.out.println("ok");
      }
   }